package com.zhijian.medical.dao.local;

import com.zhijian.medical.entity.po.ExperimentProcessResultDetail;
import com.zhijian.medical.entity.vo.request.ExperimentProcessResultDetailSearchVo;
import com.zhijian.medical.entity.vo.response.ExperimentProcessResultDetailVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface ExperimentProcessResultDetailMapper {
    int deleteByPrimaryKey(Long id);

    /**
     * 根据实验流程id进行删除
     *
     * @param experimentProcessId
     * @return
     */
    int deleteByExperimentProcessId(Long experimentProcessId);

    int insert(ExperimentProcessResultDetail record);

    int insertSelective(ExperimentProcessResultDetail record);

    ExperimentProcessResultDetail selectByPrimaryKey(Long id);

    int updateByPrimaryKeySelective(ExperimentProcessResultDetail record);

    int updateByPrimaryKey(ExperimentProcessResultDetail record);

    /**
     * 根据结果id集合进行删除
     *
     * @param resultIds
     * @return
     */
    int deleteByResultIds(@Param("param") List<Long> resultIds);

    int count(ExperimentProcessResultDetailSearchVo experimentProcessResultDetailSearchVo);

    List<ExperimentProcessResultDetailVo> selectList(ExperimentProcessResultDetailSearchVo experimentProcessResultDetailSearchVo);

    ExperimentProcessResultDetailVo selectVoById(Long id);
}